import org.junit.Assert;
import org.junit.Test;
import 遍历器.定义监听器;
import 遍历器.引用监听器;
import 遍历器.抽象语法树基础遍历器;

import java.io.IOException;
import java.net.URISyntaxException;

public class 测试符号表 {
    @Test
    public void 测试() throws IOException, URISyntaxException {
        var 源代码 = Tools.读文件(Tools.getResourcePath("t.cymbol"));
        var 树 = Cymbol语言.解析(源代码);
        
        var 定义监听器 = new 定义监听器();
        new 抽象语法树基础遍历器(定义监听器).遍历(树);

        System.out.println("-----------------------------------");
        
        var 引用监听器 = new 引用监听器(定义监听器.符号表);
        new 抽象语法树基础遍历器(引用监听器).遍历(树);
        
        Assert.assertNotNull(定义监听器.符号表);
    }
}
